home *** CD-ROM | disk | FTP | other *** search
/ X User Tools / X User Tools (O'Reilly and Associates)(1994).ISO / sun4c / archive / tcltk.z / tcltk / man / man1 / wish.1 < prev   
Text File  |  1994-09-20  |  9KB  |  313 lines

  1. '\"
  2. '\" Copyright (c) 1991 The Regents of the University of California.
  3. '\" All rights reserved.
  4. '\"
  5. '\" Permission is hereby granted, without written agreement and without
  6. '\" license or royalty fees, to use, copy, modify, and distribute this
  7. '\" documentation for any purpose, provided that the above copyright
  8. '\" notice and the following two paragraphs appear in all copies.
  9. '\"
  10. '\" IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY
  11. '\" FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
  12. '\" ARISING OUT OF THE USE OF THIS DOCUMENTATION, EVEN IF THE UNIVERSITY OF
  13. '\" CALIFORNIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  14. '\"
  15. '\" THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES,
  16. '\" INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
  17. '\" AND FITNESS FOR A PARTICULAR PURPOSE.  THE SOFTWARE PROVIDED HEREUNDER IS
  18. '\" ON AN "AS IS" BASIS, AND THE UNIVERSITY OF CALIFORNIA HAS NO OBLIGATION TO
  19. '\" PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
  20. '\" 
  21. '\" $Header: /user6/ouster/wish/man/RCS/wish.1,v 1.11 93/08/26 15:07:01 ouster Exp $ SPRITE (Berkeley)
  22. '/" 
  23. .\" The definitions below are for supplemental macros used in Tcl/Tk
  24. .\" manual entries.
  25. .\"
  26. .\" .HS name section [date [version]]
  27. .\"    Replacement for .TH in other man pages.  See below for valid
  28. .\"    section names.
  29. .\"
  30. .\" .AP type name in/out [indent]
  31. .\"    Start paragraph describing an argument to a library procedure.
  32. .\"    type is type of argument (int, etc.), in/out is either "in", "out",
  33. .\"    or "in/out" to describe whether procedure reads or modifies arg,
  34. .\"    and indent is equivalent to second arg of .IP (shouldn't ever be
  35. .\"    needed;  use .AS below instead)
  36. .\"
  37. .\" .AS [type [name]]
  38. .\"    Give maximum sizes of arguments for setting tab stops.  Type and
  39. .\"    name are examples of largest possible arguments that will be passed
  40. .\"    to .AP later.  If args are omitted, default tab stops are used.
  41. .\"
  42. .\" .BS
  43. .\"    Start box enclosure.  From here until next .BE, everything will be
  44. .\"    enclosed in one large box.
  45. .\"
  46. .\" .BE
  47. .\"    End of box enclosure.
  48. .\"
  49. .\" .VS
  50. .\"    Begin vertical sidebar, for use in marking newly-changed parts
  51. .\"    of man pages.
  52. .\"
  53. .\" .VE
  54. .\"    End of vertical sidebar.
  55. .\"
  56. .\" .DS
  57. .\"    Begin an indented unfilled display.
  58. .\"
  59. .\" .DE
  60. .\"    End of indented unfilled display.
  61. .\"
  62. '\"    # Heading for Tcl/Tk man pages
  63. .de HS
  64. .ds ^3 \\0
  65. .if !"\\$3"" .ds ^3 \\$3
  66. .if '\\$2'cmds'       .TH \\$1 1 \\*(^3 \\$4
  67. .if '\\$2'lib'        .TH \\$1 3 \\*(^3 \\$4
  68. .if '\\$2'tcl'        .TH \\$1 n \\*(^3 Tcl "Tcl Built-In Commands"
  69. .if '\\$2'tk'         .TH \\$1 n \\*(^3 Tk "Tk Commands"
  70. .if '\\$2'tclc'        .TH \\$1 3 \\*(^3 Tcl "Tcl Library Procedures"
  71. .if '\\$2'tkc'         .TH \\$1 3 \\*(^3 Tk "Tk Library Procedures"
  72. .if '\\$2'tclcmds'         .TH \\$1 1 \\*(^3 Tk "Tcl Applications"
  73. .if '\\$2'tkcmds'         .TH \\$1 1 \\*(^3 Tk "Tk Applications"
  74. .if t .wh -1.3i ^B
  75. .nr ^l \\n(.l
  76. .ad b
  77. ..
  78. '\"    # Start an argument description
  79. .de AP
  80. .ie !"\\$4"" .TP \\$4
  81. .el \{\
  82. .   ie !"\\$2"" .TP \\n()Cu
  83. .   el          .TP 15
  84. .\}
  85. .ie !"\\$3"" \{\
  86. .ta \\n()Au \\n()Bu
  87. \&\\$1    \\fI\\$2\\fP    (\\$3)
  88. .\".b
  89. .\}
  90. .el \{\
  91. .br
  92. .ie !"\\$2"" \{\
  93. \&\\$1    \\fI\\$2\\fP
  94. .\}
  95. .el \{\
  96. \&\\fI\\$1\\fP
  97. .\}
  98. .\}
  99. ..
  100. '\"    # define tabbing values for .AP
  101. .de AS
  102. .nr )A 10n
  103. .if !"\\$1"" .nr )A \\w'\\$1'u+3n
  104. .nr )B \\n()Au+15n
  105. .\"
  106. .if !"\\$2"" .nr )B \\w'\\$2'u+\\n()Au+3n
  107. .nr )C \\n()Bu+\\w'(in/out)'u+2n
  108. ..
  109. '\"    # BS - start boxed text
  110. '\"    # ^y = starting y location
  111. '\"    # ^b = 1
  112. .de BS
  113. .br
  114. .mk ^y
  115. .nr ^b 1u
  116. .if n .nf
  117. .if n .ti 0
  118. .if n \l'\\n(.lu\(ul'
  119. .if n .fi
  120. ..
  121. '\"    # BE - end boxed text (draw box now)
  122. .de BE
  123. .nf
  124. .ti 0
  125. .mk ^t
  126. .ie n \l'\\n(^lu\(ul'
  127. .el \{\
  128. .\"    Draw four-sided box normally, but don't draw top of
  129. .\"    box if the box started on an earlier page.
  130. .ie !\\n(^b-1 \{\
  131. \h'-1.5n'\L'|\\n(^yu-1v'\l'\\n(^lu+3n\(ul'\L'\\n(^tu+1v-\\n(^yu'\l'|0u-1.5n\(ul'
  132. .\}
  133. .el \}\
  134. \h'-1.5n'\L'|\\n(^yu-1v'\h'\\n(^lu+3n'\L'\\n(^tu+1v-\\n(^yu'\l'|0u-1.5n\(ul'
  135. .\}
  136. .\}
  137. .fi
  138. .br
  139. .nr ^b 0
  140. ..
  141. '\"    # VS - start vertical sidebar
  142. '\"    # ^Y = starting y location
  143. '\"    # ^v = 1 (for troff;  for nroff this doesn't matter)
  144. .de VS
  145. .mk ^Y
  146. .ie n 'mc \s12\(br\s0
  147. .el .nr ^v 1u
  148. ..
  149. '\"    # VE - end of vertical sidebar
  150. .de VE
  151. .ie n 'mc
  152. .el \{\
  153. .ev 2
  154. .nf
  155. .ti 0
  156. .mk ^t
  157. \h'|\\n(^lu+3n'\L'|\\n(^Yu-1v\(bv'\v'\\n(^tu+1v-\\n(^Yu'\h'-|\\n(^lu+3n'
  158. .sp -1
  159. .fi
  160. .ev
  161. .\}
  162. .nr ^v 0
  163. ..
  164. '\"    # Special macro to handle page bottom:  finish off current
  165. '\"    # box/sidebar if in box/sidebar mode, then invoked standard
  166. '\"    # page bottom macro.
  167. .de ^B
  168. .ev 2
  169. 'ti 0
  170. 'nf
  171. .mk ^t
  172. .if \\n(^b \{\
  173. .\"    Draw three-sided box if this is the box's first page,
  174. .\"    draw two sides but no top otherwise.
  175. .ie !\\n(^b-1 \h'-1.5n'\L'|\\n(^yu-1v'\l'\\n(^lu+3n\(ul'\L'\\n(^tu+1v-\\n(^yu'\h'|0u'\c
  176. .el \h'-1.5n'\L'|\\n(^yu-1v'\h'\\n(^lu+3n'\L'\\n(^tu+1v-\\n(^yu'\h'|0u'\c
  177. .\}
  178. .if \\n(^v \{\
  179. .nr ^x \\n(^tu+1v-\\n(^Yu
  180. \kx\h'-\\nxu'\h'|\\n(^lu+3n'\ky\L'-\\n(^xu'\v'\\n(^xu'\h'|0u'\c
  181. .\}
  182. .bp
  183. 'fi
  184. .ev
  185. .if \\n(^b \{\
  186. .mk ^y
  187. .nr ^b 2
  188. .\}
  189. .if \\n(^v \{\
  190. .mk ^Y
  191. .\}
  192. ..
  193. '\"    # DS - begin display
  194. .de DS
  195. .RS
  196. .nf
  197. .sp
  198. ..
  199. '\"    # DE - end display
  200. .de DE
  201. .fi
  202. .RE
  203. .sp .5
  204. ..
  205. .HS wish tkcmds 3.3
  206. .BS
  207. '\" Note:  do not modify the .SH NAME line immediately below!
  208. .SH NAME
  209. wish \- Simple windowing shell
  210. .SH SYNOPSIS
  211. \fBwish\fR ?\fIoptions\fR? ?\fIarg arg ...\fR?
  212. .SH OPTIONS
  213. .IP "\fB\-display \fIdisplay\fR" 15
  214. Display (and screen) on which to display window.
  215. .IP "\fB\-file \fIfileName\fR" 15
  216. Read commands from \fIfileName\fR rather than standard input.  The
  217. last element in \fIfileName\fR will be used as the title for the
  218. application and name of its interpreter for \fBsend\fR
  219. commands (unless overridden by the \fB\-name\fR option\fR).
  220. .IP "\fB\-geometry \fIgeometry\fR" 15
  221. Initial geometry to use for window.
  222. .IP "\fB\-name \fIname\fR" 15
  223. Use \fIname\fR as the title to be displayed in the window, and
  224. as the name of the interpreter for \fBsend\fR commands.
  225. .IP "\fB\-sync\fR" 15
  226. Execute all X server commands synchronously, so that errors
  227. are reported immediately.  This will result in much slower
  228. execution, but it is useful for debugging.
  229. .IP "\fB\-help\fR" 15
  230. Print a summary of the command-line options and exit.
  231. .BE
  232.  
  233. .SH DESCRIPTION
  234. .PP
  235. \fBWish\fR is a simple program consisting of the Tcl command
  236. language, the Tk toolkit, and a main program that reads commands
  237. from standard input or from a file.
  238. It creates a main window and then processes Tcl commands.
  239. If \fBwish\fR is invoked with no \fB\-f\fR option then it
  240. reads Tcl commands interactively from standard input.
  241. It will continue processing commands until all windows have been
  242. deleted or until end-of-file is reached on standard input.
  243. .VS
  244. If there exists a file \fB.wishrc\fR in the home directory of
  245. the user, \fBwish\fR evaluates the file as a Tcl script
  246. just before reading the first command from standard input.
  247. .VE
  248. .PP
  249. If the \fB\-file\fR option is provided to Tk, then \fBwish\fR reads Tcl
  250. commands from the file named in the \fB\-file\fR option.  These
  251. commands will normally create an interactive interface consisting
  252. of one or more widgets.  When the end of the command file is
  253. reached, \fBwish\fR will continue to respond to X events until
  254. all windows have been deleted.
  255. .VS
  256. There is no automatic evaluation of \fB.wishrc\fR in this
  257. case, but the script file can always \fBsource\fR it if desired.
  258. .VE
  259.  
  260. .SH "VARIABLES"
  261. .PP
  262. \fBWish\fR sets the following Tcl variables:
  263. .TP 15
  264. \fBargc\fR
  265. Contains a count of the number of \fIarg\fR arguments (0 if none),
  266. not including the options described above.
  267. .TP 15
  268. \fBargv\fR
  269. Contains a Tcl list whose elements are the \fIarg\fR arguments (not
  270. including the options described above), in order, or an empty string
  271. if there are no \fIarg\fR arguments.
  272. .TP 15
  273. \fBargv0\fR
  274. .VS
  275. Contains \fIfileName\fR if it was specified.
  276. Otherwise, contains the name by which \fBwish\fR was invoked.
  277. .TP 15
  278. \fBtcl_interactive\fR
  279. Contains 1 if \fBwish\fR is reading commands interactively (no
  280. \fB\-file\fR option was specified and standard input is a terminal-like
  281. device), 0 otherwise.
  282. .VE
  283.  
  284. .SH "SCRIPT FILES"
  285. .PP
  286. If you create a Tcl script in a file whose first line is
  287. .DS
  288. \fB#!/usr/local/bin/wish -f
  289. .DE
  290. then you can invoke the script file directly from your shell if
  291. you mark it as executable.
  292. This assumes that \fBwish\fR has been installed in the default
  293. location in /usr/local/bin;  if it's installed somewhere else
  294. then you'll have to modify the above line to match.
  295.  
  296. .SH PROMPTS
  297. .PP
  298. .VS
  299. When \fBwish\fR is invoked interactively it normally prompts for each
  300. command with ``\fB% \fR''.  You can change the prompt by setting the
  301. variables \fBtcl_prompt1\fR and \fBtcl_prompt2\fR.  If variable
  302. \fBtcl_prompt1\fR exists then it must consist of a Tcl script
  303. to output a prompt;  instead of outputting a prompt \fBwish\fR
  304. will evaluate the script in \fBtcl_prompt1\fR.
  305. The variable \fBtcl_prompt2\fR is used in a similar way when
  306. a newline is typed but the current command isn't yet complete;
  307. if \fBtcl_prompt2\fR isn't set then no prompt is output for
  308. incomplete commands.
  309. .VE
  310.  
  311. .SH KEYWORDS
  312. shell, toolkit
  313.